+// Protocol stuff
+
+const BROADWAY_NODE_TEXTURE = 0;
+const BROADWAY_NODE_CONTAINER = 1;
+const BROADWAY_NODE_COLOR = 2;
+const BROADWAY_NODE_BORDER = 3;
+const BROADWAY_NODE_OUTSET_SHADOW = 4;
+const BROADWAY_NODE_INSET_SHADOW = 5;
+const BROADWAY_NODE_ROUNDED_CLIP = 6;
+const BROADWAY_NODE_LINEAR_GRADIENT = 7;
+const BROADWAY_NODE_SHADOW = 8;
+const BROADWAY_NODE_OPACITY = 9;
+const BROADWAY_NODE_CLIP = 10;
+const BROADWAY_NODE_KEEP_ALL = 11;
+const BROADWAY_NODE_KEEP_THIS = 12;
+const BROADWAY_NODE_TRANSLATE = 13;
+const BROADWAY_NODE_DEBUG = 14;
+const BROADWAY_NODE_REUSE = 15;
+
/* Helper functions for debugging */
var logDiv = null;
function log(str) {
{
/* Leaf nodes */
- case 0: // TEXTURE
+ case BROADWAY_NODE_TEXTURE:
{
var rect = this.decode_rect();
var texture_id = this.decode_uint32();
}
break;
- case 2: // COLOR
+ case BROADWAY_NODE_COLOR:
{
var rect = this.decode_rect();
var c = this.decode_color ();
}
break;
- case 3: // BORDER
+ case BROADWAY_NODE_BORDER:
{
var rrect = this.decode_rounded_rect();
var border_widths = [];
}
break;
- case 4: // OUTSET_SHADOW
+ case BROADWAY_NODE_OUTSET_SHADOW:
{
var rrect = this.decode_rounded_rect();
var color = this.decode_color();
}
break;
- case 5: // INSET_SHADOW
+ case BROADWAY_NODE_INSET_SHADOW:
{
var rrect = this.decode_rounded_rect();
var color = this.decode_color();
break;
- case 7: // LINEAR_GRADIENT
+ case BROADWAY_NODE_LINEAR_GRADIENT:
{
var rect = this.decode_rect();
var start = this.decode_point ();
/* Bin nodes */
- case 13: // TRANSLATE
+ case BROADWAY_NODE_TRANSLATE:
{
var point = this.decode_point();
var div = document.createElement('div');
}
break;
- case 10: // CLIP
+ case BROADWAY_NODE_CLIP:
{
var rect = this.decode_rect();
var div = document.createElement('div');
}
break;
- case 6: // ROUNDED_CLIP
+ case BROADWAY_NODE_ROUNDED_CLIP:
{
var rrect = this.decode_rounded_rect();
var div = document.createElement('div');
}
break;
- case 9: // OPACITY
+ case BROADWAY_NODE_OPACITY:
{
var opacity = this.decode_float();
var div = document.createElement('div');
}
break;
- case 8: // SHADOW
+ case BROADWAY_NODE_SHADOW:
{
var len = this.decode_uint32();
var filters = "";
/* Generic nodes */
- case 1: // CONTAINER
+ case BROADWAY_NODE_CONTAINER:
{
var div = document.createElement('div');
var len = this.decode_uint32();
}
break;
- case 11: // KEEP_ALL
+ case BROADWAY_NODE_KEEP_ALL:
{
if (!oldNode)
alert("KEEP_ALL with no oldNode");
}
break;
- case 12: // KEEP_THIS
+ case BROADWAY_NODE_KEEP_THIS:
{
if (!oldNode)
alert("KEEP_THIS with no oldNode ");